package com.weimei.conversionTreasure.http;

import com.weimei.conversionTreasure.http.entity.BalanceDetailBean;
import com.weimei.conversionTreasure.http.entity.BaseResult;
import com.weimei.conversionTreasure.http.entity.BillBean;
import com.weimei.conversionTreasure.http.entity.ComputerBean;
import com.weimei.conversionTreasure.http.entity.CustomListBean;
import com.weimei.conversionTreasure.http.entity.DealerDetailBean;
import com.weimei.conversionTreasure.http.entity.FaJiaoDetailBean;
import com.weimei.conversionTreasure.http.entity.FaJiaoListBean;
import com.weimei.conversionTreasure.http.entity.FormulaBean;
import com.weimei.conversionTreasure.http.entity.FormulaDetailBean;
import com.weimei.conversionTreasure.http.entity.FormulaListBean;
import com.weimei.conversionTreasure.http.entity.KgjsBean;
import com.weimei.conversionTreasure.http.entity.MonthBean;
import com.weimei.conversionTreasure.http.entity.MonthDetailBean;
import com.weimei.conversionTreasure.http.entity.PaoLiangDetailBean;
import com.weimei.conversionTreasure.http.entity.PaoLiangListBean;
import com.weimei.conversionTreasure.http.entity.SaveListBean;
import com.weimei.conversionTreasure.http.entity.SelKhBean;
import com.weimei.conversionTreasure.http.entity.SheRuBean;
import com.weimei.conversionTreasure.http.entity.UserBean;
import com.weimei.conversionTreasure.http.entity.YMonthDetailBean;
import com.weimei.conversionTreasure.http.entity.YearBean;

import java.util.Map;

import io.reactivex.Observable;
import okhttp3.RequestBody;
import retrofit2.http.Body;
import retrofit2.http.POST;

/**
 * Created by goldze on 2019/3/26.
 */
public interface  HttpDataSource {

    @POST("app/brewing.userlogin")
    Observable<BaseResult> userLogin(Map<String,String> map);

    @POST("app/brewing.getuser")
    Observable<UserBean> getUser(Map<String,String> map);

    @POST("app/brewing.addopinion")
    Observable<BaseResult> feedBack(Map<String,String> map);

    @POST("app/brewing.logoff")
    Observable<BaseResult> logOff(Map<String,String> map);

    @POST("app/brewing.edituser")
    Observable<BaseResult> editUser(Map<String,String> map);

    @POST("app/brewing.addferment")
    Observable<BaseResult> addFerment(Map<String,String> map);

    @POST("app/brewing.fermentdetails")
    Observable<FaJiaoDetailBean> fermentDetails(Map<String,String> map);

    @POST("app/brewing.fermentlist")
    Observable<FaJiaoListBean> fermentList(Map<String,String> map);

    @POST("app/brewing.addsoakgrain")
    Observable<BaseResult> addSoakgrain(Map<String,String> map);

    @POST("app/brewing.soakgrainlist")
    Observable<PaoLiangListBean> soakgrainList(Map<String,String> map);

    @POST("app/brewing.soakgraininfo")
    Observable<PaoLiangDetailBean> soakgrainInfo(Map<String,String> map);

    @POST("app/brewing.delete_soakgrain")
    Observable<BaseResult> delete_soakgrain(Map<String,String> map);

    @POST("app/brewing.delete_ferment")
    Observable<BaseResult> delete_ferment(Map<String,String> map);

    @POST("app/brewing.adddealer")
    Observable<BaseResult> adddealer(Map<String,String> map);

    @POST("app/brewing.addcustom")
    Observable<BaseResult> addcustom(Map<String,String> map);

    @POST("app/brewing.customlist")
    Observable<CustomListBean> customlist(Map<String,String> map);

    @POST("app/brewing.dealerlist")
    Observable<CustomListBean> dealerlist(Map<String,String> map);


    @POST("app/brewing.delete_custom")
    Observable<BaseResult> delete_custom(Map<String,String> map);

    @POST("app/brewing.dealer_details")
    Observable<DealerDetailBean> dealer_details(Map<String,String> map);

    @POST("app/brewing.delete_balance")
    Observable<BaseResult> delete_balance(Map<String,String> map);

    @POST("app/brewing.add_balance")
    Observable<BaseResult> add_balance(Map<String,String> map);

    @POST("app/brewing.edit_balance")
    Observable<BaseResult> edit_balance(Map<String,String> map);

    @POST("app/brewing.seach_transaction")
    Observable<BaseResult> seach_transaction(Map<String,String> map);


    @POST("app/brewing.add_transaction")
    Observable<BaseResult> add_transaction(Map<String,String> map);

    @POST("app/brewing.delete_transaction")
    Observable<BaseResult> delete_transaction(Map<String,String> map);

    @POST("app/brewing.custom_sort")
    Observable<SelKhBean> custom_sort(Map<String,String> map);

    @POST("app/brewing.custom_dealer")
    Observable<SelKhBean> custom_dealer(Map<String,String> map);

    @POST("app/brewing.addbudget")
    Observable<BaseResult> addbudget(Map<String,String> map);

    @POST("app/brewing.addstorage")
    Observable<BaseResult> addstorage(Map<String,String> map);

    @POST("app/brewing.storagelist")
    Observable<SaveListBean> storagelist(Map<String,String> map);

    @POST("app/brewing.storageinfo")
    Observable<BaseResult> storageinfo(Map<String,String> map);

    @POST("app/brewing.addblanking")
    Observable<BaseResult> addblanking(Map<String,String> map);

    @POST("app/brewing.blankinglist")
    Observable<SaveListBean> blankinglist(Map<String,String> map);

    @POST("app/brewing.blankinginfo")
    Observable<BaseResult> blankinginfo(Map<String,String> map);

    @POST("app/brewing.deletestorage")
    Observable<BaseResult> deletestorage(Map<String,String> map);

    @POST("app/brewing.mybill")
    Observable<BillBean> mybill(Map<String,String> map);

    @POST("app/brewing.month_chart")
    Observable<YMonthDetailBean> month_chart(Map<String,String> map);

    @POST("app/brewing.yearchart")
    Observable<YearBean> year_chart(Map<String,String> map);

    @POST("app/brewing.month_details")
    Observable<MonthDetailBean> month_details(Map<String,String> map);

    @POST("app/brewing.monthly_stat")
    Observable<MonthBean> monthly_stat(Map<String,String> map);

    @POST("app/brewing.editbudget")
    Observable<BaseResult> editbudget(Map<String,String> map);

    @POST("app/brewing.balance_details")
    Observable<BalanceDetailBean> balance_details(Map<String,String> map);

    @POST("app/brewing.proofspirit")
    Observable<ComputerBean> proofspirit(Map<String,String> map);

    @POST("app/brewing.computedensity")
    Observable<ComputerBean> computedensity(Map<String,String> map);


    @POST("app/brewing.getwine")
    Observable<ComputerBean> getwine(Map<String,String> map);

    @POST("app/brewing.blending_weight")
    Observable<KgjsBean> blending_weight(Map<String,String> map);

    @POST("app/brewing.getvolume")
    Observable<ComputerBean> getvolume(Map<String,String> map);

    @POST("app/brewing.computeweight")
    Observable<ComputerBean> computeweight(Map<String,String> map);

    @POST("app/brewing.water_addition")
    Observable<SheRuBean> water_addition(Map<String,String> map);


    @POST("app/brewing.target_alcohol")
    Observable<SheRuBean> target_alcohol(Map<String,String> map);

    @POST("app/brewing.costing")
    Observable<SheRuBean> costing(Map<String,String> map);

    @POST("app/brewing.intake_calculation")
    Observable<SheRuBean> intake_calculation(Map<String,String> map);

    @POST("app/brewing.degrees")
    Observable<SheRuBean> degrees(Map<String,String> map);

    @POST("app/brewing.elevations")
    Observable<SheRuBean> elevations(Map<String,String> map);

    @POST("app/brewing.addformula")
    Observable<BaseResult> addformula(Map<String,String> map);

    @POST("app/brewing.formulalist")
    Observable<FormulaListBean> formulalist(Map<String,String> map);

    @POST("app/brewing.formuladetails")
    Observable<FormulaDetailBean> formuladetails(Map<String,String> map);

    @POST("app/brewing.recent_formula")
    Observable<FormulaBean> recent_formula(Map<String,String> map);


    @POST("app/brewing.delete_formula")
    Observable<BaseResult> delete_formula(Map<String,String> map);

    @POST("app/brewing.blending_volume")
    Observable<KgjsBean> blending_volume(Map<String,String> map);

}
